from django.db import models
from django.contrib.sites.models import Site
from rankings.managers import GrupoManager, CategoriaManager, ParejaManager


class Fase(models.Model):
	nombre = models.CharField(max_length=200)
	fecha = models.DateField()

	def __unicode__(self):
		return self.nombre

class Ranking(models.Model):
	fase_seleccionada = models.OneToOneField(Fase)
	site = models.OneToOneField(Site)
	nombre = models.CharField(max_length=200)

	def __unicode__(self):
		return self.nombre

class Categoria(models.Model):
	nombre = models.CharField(max_length=200)
	fase = models.ForeignKey(Fase)
	objects = CategoriaManager()

	def __unicode__(self):
		return self.nombre

class Grupo(models.Model):
	nombre = models.CharField(max_length=200)
	categoria = models.ForeignKey(Categoria)
	objects = GrupoManager()

	def __unicode__(self):
		return self.nombre

class Jugador(models.Model):
	nombre = models.CharField(max_length=200)
	movil = models.IntegerField()
	email = models.EmailField()

	def __unicode__(self):
		return self.nombre

class Pareja(models.Model):
	grupo = models.ForeignKey(Grupo, null=True, blank=True)
	jugador = models.OneToOneField(Jugador, related_name='jugador1')
	jugador2 = models.OneToOneField(Jugador, related_name='jugador2')
	jugados = models.IntegerField(null=True, blank=True)
	ganados = models.IntegerField(null=True, blank=True)
	perdidos = models.IntegerField(null=True, blank=True)
	objects = ParejaManager()

	def __unicode__(self):
		return self.jugador.nombre + ' / ' + self.jugador2.nombre




